package com.hy;

import java.util.ArrayList;
import java.util.List;
import java.util.Random;

/**
 * Created With IntelliJ IDEA.
 * Descriptions:盛最多水的容器
 * 给定一个长度为 n 的整数数组height。有n条垂线，第 i 条线的两个端点是(i, 0)和(i, height[i])。
 *
 * 找出其中的两条线，使得它们与x轴共同构成的容器可以容纳最多的水。
 *
 * 返回容器可以储存的最大水量。
 *
 * 说明：你不能倾斜容器。
 *
 * author: Mr.Du
 * Date: 2023/6/8
 * Time: 20:21
 */
public class MaxArea {

    public static void main(String[] args) {
        Random random = new Random();
        List<Integer> list = new ArrayList<>();
        for(int i = 0;i < 100000;i++){
            list.add(random.nextInt(10000));
        }
        System.out.println(list);
    }


    public static int maxArea(int[] height) {
        int res = 0;
        int i = 0, j = height.length - 1;
        while(i < j){
            res = Math.max(res, (j - i) * Math.min(height[i],height[j]));
            if(height[i] < height[j]) i++;
            else j--;
        }
        return res;
    }


}
